package com.attendance.www.hr.entitys;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class SalaryApprovalRecordExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public SalaryApprovalRecordExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andSalaryApprovalRecordIdIsNull() {
            addCriterion("salary_approval_record_id is null");
            return (Criteria) this;
        }

        public Criteria andSalaryApprovalRecordIdIsNotNull() {
            addCriterion("salary_approval_record_id is not null");
            return (Criteria) this;
        }

        public Criteria andSalaryApprovalRecordIdEqualTo(Integer value) {
            addCriterion("salary_approval_record_id =", value, "salaryApprovalRecordId");
            return (Criteria) this;
        }

        public Criteria andSalaryApprovalRecordIdNotEqualTo(Integer value) {
            addCriterion("salary_approval_record_id <>", value, "salaryApprovalRecordId");
            return (Criteria) this;
        }

        public Criteria andSalaryApprovalRecordIdGreaterThan(Integer value) {
            addCriterion("salary_approval_record_id >", value, "salaryApprovalRecordId");
            return (Criteria) this;
        }

        public Criteria andSalaryApprovalRecordIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("salary_approval_record_id >=", value, "salaryApprovalRecordId");
            return (Criteria) this;
        }

        public Criteria andSalaryApprovalRecordIdLessThan(Integer value) {
            addCriterion("salary_approval_record_id <", value, "salaryApprovalRecordId");
            return (Criteria) this;
        }

        public Criteria andSalaryApprovalRecordIdLessThanOrEqualTo(Integer value) {
            addCriterion("salary_approval_record_id <=", value, "salaryApprovalRecordId");
            return (Criteria) this;
        }

        public Criteria andSalaryApprovalRecordIdIn(List<Integer> values) {
            addCriterion("salary_approval_record_id in", values, "salaryApprovalRecordId");
            return (Criteria) this;
        }

        public Criteria andSalaryApprovalRecordIdNotIn(List<Integer> values) {
            addCriterion("salary_approval_record_id not in", values, "salaryApprovalRecordId");
            return (Criteria) this;
        }

        public Criteria andSalaryApprovalRecordIdBetween(Integer value1, Integer value2) {
            addCriterion("salary_approval_record_id between", value1, value2, "salaryApprovalRecordId");
            return (Criteria) this;
        }

        public Criteria andSalaryApprovalRecordIdNotBetween(Integer value1, Integer value2) {
            addCriterion("salary_approval_record_id not between", value1, value2, "salaryApprovalRecordId");
            return (Criteria) this;
        }

        public Criteria andSalaryRequestIdIsNull() {
            addCriterion("salary_request_id is null");
            return (Criteria) this;
        }

        public Criteria andSalaryRequestIdIsNotNull() {
            addCriterion("salary_request_id is not null");
            return (Criteria) this;
        }

        public Criteria andSalaryRequestIdEqualTo(Integer value) {
            addCriterion("salary_request_id =", value, "salaryRequestId");
            return (Criteria) this;
        }

        public Criteria andSalaryRequestIdNotEqualTo(Integer value) {
            addCriterion("salary_request_id <>", value, "salaryRequestId");
            return (Criteria) this;
        }

        public Criteria andSalaryRequestIdGreaterThan(Integer value) {
            addCriterion("salary_request_id >", value, "salaryRequestId");
            return (Criteria) this;
        }

        public Criteria andSalaryRequestIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("salary_request_id >=", value, "salaryRequestId");
            return (Criteria) this;
        }

        public Criteria andSalaryRequestIdLessThan(Integer value) {
            addCriterion("salary_request_id <", value, "salaryRequestId");
            return (Criteria) this;
        }

        public Criteria andSalaryRequestIdLessThanOrEqualTo(Integer value) {
            addCriterion("salary_request_id <=", value, "salaryRequestId");
            return (Criteria) this;
        }

        public Criteria andSalaryRequestIdIn(List<Integer> values) {
            addCriterion("salary_request_id in", values, "salaryRequestId");
            return (Criteria) this;
        }

        public Criteria andSalaryRequestIdNotIn(List<Integer> values) {
            addCriterion("salary_request_id not in", values, "salaryRequestId");
            return (Criteria) this;
        }

        public Criteria andSalaryRequestIdBetween(Integer value1, Integer value2) {
            addCriterion("salary_request_id between", value1, value2, "salaryRequestId");
            return (Criteria) this;
        }

        public Criteria andSalaryRequestIdNotBetween(Integer value1, Integer value2) {
            addCriterion("salary_request_id not between", value1, value2, "salaryRequestId");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitIsNull() {
            addCriterion("employee_no_submit is null");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitIsNotNull() {
            addCriterion("employee_no_submit is not null");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitEqualTo(String value) {
            addCriterion("employee_no_submit =", value, "employeeNoSubmit");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitNotEqualTo(String value) {
            addCriterion("employee_no_submit <>", value, "employeeNoSubmit");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitGreaterThan(String value) {
            addCriterion("employee_no_submit >", value, "employeeNoSubmit");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitGreaterThanOrEqualTo(String value) {
            addCriterion("employee_no_submit >=", value, "employeeNoSubmit");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitLessThan(String value) {
            addCriterion("employee_no_submit <", value, "employeeNoSubmit");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitLessThanOrEqualTo(String value) {
            addCriterion("employee_no_submit <=", value, "employeeNoSubmit");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitLike(String value) {
            addCriterion("employee_no_submit like", value, "employeeNoSubmit");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitNotLike(String value) {
            addCriterion("employee_no_submit not like", value, "employeeNoSubmit");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitIn(List<String> values) {
            addCriterion("employee_no_submit in", values, "employeeNoSubmit");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitNotIn(List<String> values) {
            addCriterion("employee_no_submit not in", values, "employeeNoSubmit");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitBetween(String value1, String value2) {
            addCriterion("employee_no_submit between", value1, value2, "employeeNoSubmit");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoSubmitNotBetween(String value1, String value2) {
            addCriterion("employee_no_submit not between", value1, value2, "employeeNoSubmit");
            return (Criteria) this;
        }

        public Criteria andSalaryYearIsNull() {
            addCriterion("salary_year is null");
            return (Criteria) this;
        }

        public Criteria andSalaryYearIsNotNull() {
            addCriterion("salary_year is not null");
            return (Criteria) this;
        }

        public Criteria andSalaryYearEqualTo(Integer value) {
            addCriterion("salary_year =", value, "salaryYear");
            return (Criteria) this;
        }

        public Criteria andSalaryYearNotEqualTo(Integer value) {
            addCriterion("salary_year <>", value, "salaryYear");
            return (Criteria) this;
        }

        public Criteria andSalaryYearGreaterThan(Integer value) {
            addCriterion("salary_year >", value, "salaryYear");
            return (Criteria) this;
        }

        public Criteria andSalaryYearGreaterThanOrEqualTo(Integer value) {
            addCriterion("salary_year >=", value, "salaryYear");
            return (Criteria) this;
        }

        public Criteria andSalaryYearLessThan(Integer value) {
            addCriterion("salary_year <", value, "salaryYear");
            return (Criteria) this;
        }

        public Criteria andSalaryYearLessThanOrEqualTo(Integer value) {
            addCriterion("salary_year <=", value, "salaryYear");
            return (Criteria) this;
        }

        public Criteria andSalaryYearIn(List<Integer> values) {
            addCriterion("salary_year in", values, "salaryYear");
            return (Criteria) this;
        }

        public Criteria andSalaryYearNotIn(List<Integer> values) {
            addCriterion("salary_year not in", values, "salaryYear");
            return (Criteria) this;
        }

        public Criteria andSalaryYearBetween(Integer value1, Integer value2) {
            addCriterion("salary_year between", value1, value2, "salaryYear");
            return (Criteria) this;
        }

        public Criteria andSalaryYearNotBetween(Integer value1, Integer value2) {
            addCriterion("salary_year not between", value1, value2, "salaryYear");
            return (Criteria) this;
        }

        public Criteria andSalaryMonthIsNull() {
            addCriterion("salary_month is null");
            return (Criteria) this;
        }

        public Criteria andSalaryMonthIsNotNull() {
            addCriterion("salary_month is not null");
            return (Criteria) this;
        }

        public Criteria andSalaryMonthEqualTo(Integer value) {
            addCriterion("salary_month =", value, "salaryMonth");
            return (Criteria) this;
        }

        public Criteria andSalaryMonthNotEqualTo(Integer value) {
            addCriterion("salary_month <>", value, "salaryMonth");
            return (Criteria) this;
        }

        public Criteria andSalaryMonthGreaterThan(Integer value) {
            addCriterion("salary_month >", value, "salaryMonth");
            return (Criteria) this;
        }

        public Criteria andSalaryMonthGreaterThanOrEqualTo(Integer value) {
            addCriterion("salary_month >=", value, "salaryMonth");
            return (Criteria) this;
        }

        public Criteria andSalaryMonthLessThan(Integer value) {
            addCriterion("salary_month <", value, "salaryMonth");
            return (Criteria) this;
        }

        public Criteria andSalaryMonthLessThanOrEqualTo(Integer value) {
            addCriterion("salary_month <=", value, "salaryMonth");
            return (Criteria) this;
        }

        public Criteria andSalaryMonthIn(List<Integer> values) {
            addCriterion("salary_month in", values, "salaryMonth");
            return (Criteria) this;
        }

        public Criteria andSalaryMonthNotIn(List<Integer> values) {
            addCriterion("salary_month not in", values, "salaryMonth");
            return (Criteria) this;
        }

        public Criteria andSalaryMonthBetween(Integer value1, Integer value2) {
            addCriterion("salary_month between", value1, value2, "salaryMonth");
            return (Criteria) this;
        }

        public Criteria andSalaryMonthNotBetween(Integer value1, Integer value2) {
            addCriterion("salary_month not between", value1, value2, "salaryMonth");
            return (Criteria) this;
        }

        public Criteria andApprovalStateIsNull() {
            addCriterion("approval_state is null");
            return (Criteria) this;
        }

        public Criteria andApprovalStateIsNotNull() {
            addCriterion("approval_state is not null");
            return (Criteria) this;
        }

        public Criteria andApprovalStateEqualTo(Integer value) {
            addCriterion("approval_state =", value, "approvalState");
            return (Criteria) this;
        }

        public Criteria andApprovalStateNotEqualTo(Integer value) {
            addCriterion("approval_state <>", value, "approvalState");
            return (Criteria) this;
        }

        public Criteria andApprovalStateGreaterThan(Integer value) {
            addCriterion("approval_state >", value, "approvalState");
            return (Criteria) this;
        }

        public Criteria andApprovalStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("approval_state >=", value, "approvalState");
            return (Criteria) this;
        }

        public Criteria andApprovalStateLessThan(Integer value) {
            addCriterion("approval_state <", value, "approvalState");
            return (Criteria) this;
        }

        public Criteria andApprovalStateLessThanOrEqualTo(Integer value) {
            addCriterion("approval_state <=", value, "approvalState");
            return (Criteria) this;
        }

        public Criteria andApprovalStateIn(List<Integer> values) {
            addCriterion("approval_state in", values, "approvalState");
            return (Criteria) this;
        }

        public Criteria andApprovalStateNotIn(List<Integer> values) {
            addCriterion("approval_state not in", values, "approvalState");
            return (Criteria) this;
        }

        public Criteria andApprovalStateBetween(Integer value1, Integer value2) {
            addCriterion("approval_state between", value1, value2, "approvalState");
            return (Criteria) this;
        }

        public Criteria andApprovalStateNotBetween(Integer value1, Integer value2) {
            addCriterion("approval_state not between", value1, value2, "approvalState");
            return (Criteria) this;
        }

        public Criteria andStepIsNull() {
            addCriterion("step is null");
            return (Criteria) this;
        }

        public Criteria andStepIsNotNull() {
            addCriterion("step is not null");
            return (Criteria) this;
        }

        public Criteria andStepEqualTo(Integer value) {
            addCriterion("step =", value, "step");
            return (Criteria) this;
        }

        public Criteria andStepNotEqualTo(Integer value) {
            addCriterion("step <>", value, "step");
            return (Criteria) this;
        }

        public Criteria andStepGreaterThan(Integer value) {
            addCriterion("step >", value, "step");
            return (Criteria) this;
        }

        public Criteria andStepGreaterThanOrEqualTo(Integer value) {
            addCriterion("step >=", value, "step");
            return (Criteria) this;
        }

        public Criteria andStepLessThan(Integer value) {
            addCriterion("step <", value, "step");
            return (Criteria) this;
        }

        public Criteria andStepLessThanOrEqualTo(Integer value) {
            addCriterion("step <=", value, "step");
            return (Criteria) this;
        }

        public Criteria andStepIn(List<Integer> values) {
            addCriterion("step in", values, "step");
            return (Criteria) this;
        }

        public Criteria andStepNotIn(List<Integer> values) {
            addCriterion("step not in", values, "step");
            return (Criteria) this;
        }

        public Criteria andStepBetween(Integer value1, Integer value2) {
            addCriterion("step between", value1, value2, "step");
            return (Criteria) this;
        }

        public Criteria andStepNotBetween(Integer value1, Integer value2) {
            addCriterion("step not between", value1, value2, "step");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalIsNull() {
            addCriterion("employee_no_approval is null");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalIsNotNull() {
            addCriterion("employee_no_approval is not null");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalEqualTo(String value) {
            addCriterion("employee_no_approval =", value, "employeeNoApproval");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalNotEqualTo(String value) {
            addCriterion("employee_no_approval <>", value, "employeeNoApproval");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalGreaterThan(String value) {
            addCriterion("employee_no_approval >", value, "employeeNoApproval");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalGreaterThanOrEqualTo(String value) {
            addCriterion("employee_no_approval >=", value, "employeeNoApproval");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalLessThan(String value) {
            addCriterion("employee_no_approval <", value, "employeeNoApproval");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalLessThanOrEqualTo(String value) {
            addCriterion("employee_no_approval <=", value, "employeeNoApproval");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalLike(String value) {
            addCriterion("employee_no_approval like", value, "employeeNoApproval");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalNotLike(String value) {
            addCriterion("employee_no_approval not like", value, "employeeNoApproval");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalIn(List<String> values) {
            addCriterion("employee_no_approval in", values, "employeeNoApproval");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalNotIn(List<String> values) {
            addCriterion("employee_no_approval not in", values, "employeeNoApproval");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalBetween(String value1, String value2) {
            addCriterion("employee_no_approval between", value1, value2, "employeeNoApproval");
            return (Criteria) this;
        }

        public Criteria andEmployeeNoApprovalNotBetween(String value1, String value2) {
            addCriterion("employee_no_approval not between", value1, value2, "employeeNoApproval");
            return (Criteria) this;
        }

        public Criteria andApprovalDateIsNull() {
            addCriterion("approval_date is null");
            return (Criteria) this;
        }

        public Criteria andApprovalDateIsNotNull() {
            addCriterion("approval_date is not null");
            return (Criteria) this;
        }

        public Criteria andApprovalDateEqualTo(Date value) {
            addCriterion("approval_date =", value, "approvalDate");
            return (Criteria) this;
        }

        public Criteria andApprovalDateNotEqualTo(Date value) {
            addCriterion("approval_date <>", value, "approvalDate");
            return (Criteria) this;
        }

        public Criteria andApprovalDateGreaterThan(Date value) {
            addCriterion("approval_date >", value, "approvalDate");
            return (Criteria) this;
        }

        public Criteria andApprovalDateGreaterThanOrEqualTo(Date value) {
            addCriterion("approval_date >=", value, "approvalDate");
            return (Criteria) this;
        }

        public Criteria andApprovalDateLessThan(Date value) {
            addCriterion("approval_date <", value, "approvalDate");
            return (Criteria) this;
        }

        public Criteria andApprovalDateLessThanOrEqualTo(Date value) {
            addCriterion("approval_date <=", value, "approvalDate");
            return (Criteria) this;
        }

        public Criteria andApprovalDateIn(List<Date> values) {
            addCriterion("approval_date in", values, "approvalDate");
            return (Criteria) this;
        }

        public Criteria andApprovalDateNotIn(List<Date> values) {
            addCriterion("approval_date not in", values, "approvalDate");
            return (Criteria) this;
        }

        public Criteria andApprovalDateBetween(Date value1, Date value2) {
            addCriterion("approval_date between", value1, value2, "approvalDate");
            return (Criteria) this;
        }

        public Criteria andApprovalDateNotBetween(Date value1, Date value2) {
            addCriterion("approval_date not between", value1, value2, "approvalDate");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNull() {
            addCriterion("description is null");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNotNull() {
            addCriterion("description is not null");
            return (Criteria) this;
        }

        public Criteria andDescriptionEqualTo(String value) {
            addCriterion("description =", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotEqualTo(String value) {
            addCriterion("description <>", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThan(String value) {
            addCriterion("description >", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("description >=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThan(String value) {
            addCriterion("description <", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThanOrEqualTo(String value) {
            addCriterion("description <=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLike(String value) {
            addCriterion("description like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotLike(String value) {
            addCriterion("description not like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionIn(List<String> values) {
            addCriterion("description in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotIn(List<String> values) {
            addCriterion("description not in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionBetween(String value1, String value2) {
            addCriterion("description between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotBetween(String value1, String value2) {
            addCriterion("description not between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}